/*******************************************************************************
 *
 * Copyright (c) 2001-2006 Primeton Technologies, Ltd.
 * All rights reserved.
 *
 * Created on Apr 11, 2008
 *******************************************************************************/
package com.cap.cfae.cfae;

import com.eos.data.sdo.IObjectFactory;

import commonj.sdo.DataObject;
import commonj.sdo.Type;
import commonj.sdo.helper.DataFactory;
import commonj.sdo.helper.TypeHelper;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Test</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link com.cap.cfae.cfae.Tag#getId <em>Id</em>}</li>
 *   <li>{@link com.cap.cfae.cfae.Tag#getTagName <em>TagName</em>}</li>
 *   <li>{@link com.cap.cfae.cfae.Tag#getUserId <em>UserId</em>}</li>
 *   <li>{@link com.cap.cfae.cfae.Tag#getCreateDate <em>CreateDate</em>}</li>
 *   <li>{@link com.cap.cfae.cfae.Tag#getModifyDate <em>ModifyDate</em>}</li>
 * </ul>
 * </p>
 *
 * @extends DataObject;
 */
public interface Tag extends DataObject {

	public static final String QNAME = "com.cap.cfae.cfae.Tag";

	public static final Type TYPE = TypeHelper.INSTANCE.getType("com.cap.cfae.cfae", "Tag");

	public static final IObjectFactory<Tag> FACTORY = new IObjectFactory<Tag>() {
		public Tag create() {
			return (Tag) DataFactory.INSTANCE.create(TYPE);
		}
	};

	/**
	 * Returns the value of the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Id</em>' attribute.
	 * @see #setId(java.lang.String)
	 */
	public String getId();

	/**
	 * Sets the value of the '{@link com.cap.cfae.cfae.Tag#getId <em>Id</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Id</em>' attribute.
	 * @see #getId()
	 */
	public void setId(String id);

	/**
	 * Returns the value of the '<em><b>TagName</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>TagName</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>TagName</em>' attribute.
	 * @see #setTagName(java.lang.String)
	 */
	public String getTagName();

	/**
	 * Sets the value of the '{@link com.cap.cfae.cfae.Tag#getTagName <em>TagName</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>TagName</em>' attribute.
	 * @see #getTagName()
	 */
	public void setTagName(String tagName);

	/**
	 * Returns the value of the '<em><b>UserId</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>UserId</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>UserId</em>' attribute.
	 * @see #setUserId(java.lang.String)
	 */
	public String getUserId();

	/**
	 * Sets the value of the '{@link com.cap.cfae.cfae.Tag#getUserId <em>UserId</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>UserId</em>' attribute.
	 * @see #getUserId()
	 */
	public void setUserId(String userId);

	/**
	 * Returns the value of the '<em><b>CreateDate</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>CreateDate</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>CreateDate</em>' attribute.
	 * @see #setCreateDate(java.lang.String)
	 */
	public String getCreateDate();

	/**
	 * Sets the value of the '{@link com.cap.cfae.cfae.Tag#getCreateDate <em>CreateDate</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>CreateDate</em>' attribute.
	 * @see #getCreateDate()
	 */
	public void setCreateDate(String createDate);

	/**
	 * Returns the value of the '<em><b>ModifyDate</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>ModifyDate</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>ModifyDate</em>' attribute.
	 * @see #setModifyDate(java.lang.String)
	 */
	public String getModifyDate();

	/**
	 * Sets the value of the '{@link com.cap.cfae.cfae.Tag#getModifyDate <em>ModifyDate</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>ModifyDate</em>' attribute.
	 * @see #getModifyDate()
	 */
	public void setModifyDate(String modifyDate);


}